/**  
* @Title: CrShopOrderService.java
* @Package com.lemon.service.cityRun
* @Description: (一句话阐述):
* @author Ran_cc
* @date 2018年10月26日
* @version V1.0  
*/
package com.lemon.service.cityRun;

import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.lemon.model.cityRun.CrShopOrderComment;
import com.lemon.model.cityRun.CrShopOrderGoods;
import com.lemon.model.cityRun.CrShopOrders;

/**
 * <p>Title: CrShopOrderService</p>
 * <p>Description: 
 * </p>
 * <p>Company: </p>
 * @author Ran_cc
 * @date 2018年10月26日
 * @版本 V 1.0 
 */
public interface CrShopOrderService {

	/**
	 * <b>Description:<blockquote> 查询订单列表
	 * </blockquote></b>
	 * 
	 * @Title: selectListBySelective
	 * @param order
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年10月26日
	 */
	List<CrShopOrders> selectListBySelective(CrShopOrders order) throws Exception;

	/**
	 * <b>Description:<blockquote> 获取订单中菜品的列表
	 * </blockquote></b>
	 * 
	 * @Title: selectOrderGoodsListBySelective
	 * @param ogo
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年10月26日
	 */
	List<CrShopOrderGoods> selectOrderGoodsListBySelective(CrShopOrderGoods ogo) throws Exception;

	/**
	 * <b>Description:<blockquote> 查询今日盈利情况
	 * </blockquote></b>
	 * 
	 * @Title: selectOrderProfitToday
	 * @param order
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年10月26日
	 */
	List<Map<String , Object>> selectOrderProfitToday(CrShopOrders order) throws Exception;

	/**
	 * <b>Description:<blockquote> 修改订单评论
	 * </blockquote></b>
	 * 
	 * @Title: updateCommentBySelective
	 * @param comment
	 * @return
	 * @author Ran_cc
	 * @date 2018年11月1日
	 */
	int updateCommentBySelective(CrShopOrderComment comment) throws Exception;

	/**
	 * <b>Description:<blockquote> 查询订单评论列表
	 * </blockquote></b>
	 * 
	 * @Title: selectCommentsListBySelective
	 * @param comment
	 * @return
	 * @author Ran_cc
	 * @date 2018年11月1日
	 */
	List<CrShopOrderComment> selectCommentsListBySelective(CrShopOrderComment comment) throws Exception;

	/**
	 * <b>Description:<blockquote>查询财务对账每天的订单收入
	 * </blockquote></b>
	 * 
	 * @Title: getOrderProfitList
	 * @param orders
	 * @return
	 * @author Ran_cc
	 * @date 2018年11月5日
	 */
	List<Map<String , Object>> getOrderProfitList(CrShopOrders orders) throws Exception;

	/**
	 * <b>Description:<blockquote> wx查询商家评论列表
	 * </blockquote></b>
	 * 
	 * @Title: getShopsCommentList
	 * @param go
	 * @return
	 * @author Ran_cc
	 * @date 2018年11月9日
	 */
	List<CrShopOrderComment> getShopsCommentList(CrShopOrderComment comment) throws Exception;

	/**
	 * <b>Description:<blockquote> 获得商家首页的统计数据
	 * </blockquote></b>
	 * 
	 * @Title: getShopTodayFirgit
	 * @param orders
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年11月10日
	 */
	Map<String , Object> getShopTodayFirgit(CrShopOrders orders) throws Exception;

	/**
	 * <b>Description:<blockquote> 创建订单
	 * </blockquote></b>
	 * 
	 * @Title: createOrdersInfo
	 * @param order
	 * @author Ran_cc
	 * @return
	 * @date 2018年11月12日
	 */
	int createOrdersInfo(CrShopOrders order) throws Exception;

	/**
	 * <b>Description:<blockquote>
	 * </blockquote></b>
	 * 
	 * @Title: selectCountBySelective
	 * @param or
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年11月12日
	 */
	int selectCountBySelective(CrShopOrders or) throws Exception;

	/**
	 * <b>Description:<blockquote>
	 * </blockquote></b>
	 * 
	 * @Title: updateOrderInfo
	 * @param order
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年11月14日
	 */
	int updateOrderInfo(CrShopOrders order) throws Exception;

	/**
	 * <b>Description:<blockquote>
	 * </blockquote></b>
	 * 
	 * @Title: payWeChatNotifyUrl
	 * @param request
	 * @param response
	 * @author Ran_cc
	 * @date 2018年11月24日
	 */
	void payWeChatNotifyUrl(HttpServletRequest request , HttpServletResponse response);

	/**
	 * <b>Description:<blockquote>
	 * </blockquote></b>
	 * 
	 * @Title: selectByOrderId
	 * @param id
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年12月1日
	 */
	CrShopOrders selectByOrderId(String id) throws Exception;

	/**
	 * <b>Description:<blockquote>
	 * </blockquote></b>
	 * 
	 * @Title: celOrdersById
	 * @param id
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年12月1日
	 */
	void celOrdersById(String id) throws Exception;

	/**
	 * <b>Description:<blockquote>
	 * </blockquote></b>
	 * 
	 * @Title: insertCommentBySelective
	 * @param comment
	 * @return
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2018年12月2日
	 */
	int insertCommentBySelective(CrShopOrderComment comment) throws Exception;

	/**
	 * <b>Description:<blockquote>
	 * </blockquote></b>
	 * 
	 * @Title: selectCommentBySelective
	 * @param comment
	 * @return
	 * @author Ran_cc
	 * @date 2018年12月2日
	 */
	CrShopOrderComment selectCommentBySelective(CrShopOrderComment comment) throws Exception;

	/**
	 * <b>Description:<blockquote>
	 * </blockquote></b>
	 * 
	 * @Title: updateCelGoodsNum
	 * @param order2
	 * @author Ran_cc
	 * @throws Exception
	 * @date 2019年1月5日
	 */
	void updateCelGoodsNum(CrShopOrders order2) throws Exception;

}
